Christoph Reiter [Tue, 6 Oct 2015 22:00:35 +0000 (00:00 +0200)]
Fix accessibility not getting initialized in gtk_init() if a default display is already set
_gtk_accessibility_init() only gets called if the default
display changes, but in case gdk_init() is called before gtk_init()
the default display is already set and no property notification occurs.
This can happen quite easily in pygobject where
"from gi.repository import Gdk, Gtk"
will call gdk_init() followed by gtk_init() in the Python overrides.
This fixes it by checking for a default display in all cases.
Olivier Fourdan [Tue, 15 Sep 2015 12:17:05 +0000 (14:17 +0200)]
GdkAppLaunchContext: Set DISPLAY variable for X11
The environment variable DISPLAY makes sense only for X11, so set its
value in the X11 backend.
https://bugzilla.gnome.org/show_bug.cgi?id=754983
Matthias Clasen [Mon, 5 Oct 2015 12:19:07 +0000 (08:19 -0400)]
assistant: Deal with spontaneous page disappearance
Removing pages from the assistant with gtk_widget_destroy() used
to work. It broke with the recent interposition of a box between
each page and the notebook. Fix this by cleaning up when the box
child is removed.
https://bugzilla.gnome.org/show_bug.cgi?id=756042
Wolfgang Stöggl [Sun, 4 Oct 2015 09:04:15 +0000 (09:04 +0000)]
Updated German translation
Rafal Luzynski [Sun, 23 Aug 2015 00:32:21 +0000 (02:32 +0200)]
flowbox: correct the behavior with "can-focus"==FALSE
In fact there were two issues:
1. GtkFlowBoxChild with "can-focus"==FALSE should pass the focus
to its child immediately.
2. GtkFlowBox with "can-focus"==FALSE should cease its custom keynav
implementation and fall back to the default GtkContainer behavior
which is more natural.
Thanks to these changes the flow box can act as a better replacement
for GtkGrid and similar containers.
https://bugzilla.gnome.org/show_bug.cgi?id=753371
Matthias Clasen [Sun, 4 Oct 2015 02:41:06 +0000 (22:41 -0400)]
Bump version to 3.19.0
Otherwise, internal use of new API causes deprecation warnings.
Matthias Clasen [Thu, 17 Sep 2015 23:14:37 +0000 (19:14 -0400)]
inspector: Add a reset button for settings
This is exercising the new gtk_settings_reset_property api.
https://bugzilla.gnome.org/show_bug.cgi?id=755008
Matthias Clasen [Thu, 17 Sep 2015 23:13:39 +0000 (19:13 -0400)]
Add gtk_settings_reset_property
This api undoes an application-specific override and makes the
setting follow the system-wide values again.
https://bugzilla.gnome.org/show_bug.cgi?id=755008
Matthias Clasen [Sun, 4 Oct 2015 02:40:27 +0000 (22:40 -0400)]
style context: Avoid a compiler warning
John Ralls [Fri, 18 Sep 2015 22:12:24 +0000 (15:12 -0700)]
Bug 753992 - im-quartz discard_preedit segmentation fault
Replace checking if the NSView is really a GdkWindow, which will crash
in the likely event it's not a GObject, with ensuring that the parent
GdkWindow is really a GdkWindowQuartz.
Benjamin Otte [Sun, 13 Sep 2015 14:00:22 +0000 (16:00 +0200)]
gdk: Add gdk_rectangle_equal()
There's enough users inside GTK to warrant this convenience function.
Sébastien Wilmet [Thu, 24 Sep 2015 08:59:32 +0000 (10:59 +0200)]
texttag: add gtk_text_tag_changed()
The function is useful for a GtkTextTag subclass that adds new
properties.
https://bugzilla.gnome.org/show_bug.cgi?id=755416
Benjamin Otte [Sun, 13 Sep 2015 13:36:49 +0000 (15:36 +0200)]
gdk: Add version macros for 3.20
Matthias Clasen [Sun, 4 Oct 2015 01:38:20 +0000 (21:38 -0400)]
style context: Formatting fixes
Matthias Clasen [Sat, 3 Oct 2015 21:38:36 +0000 (17:38 -0400)]
Add a test for gtk_style_context_list_classes
This test failed before the previous commit.
Matthias Clasen [Sat, 3 Oct 2015 21:37:34 +0000 (17:37 -0400)]
Fix gtk_style_context_list_classes
The function was always returning NULL.
Matthias Clasen [Sat, 3 Oct 2015 20:20:50 +0000 (16:20 -0400)]
switch: Unclip the slider shadow
This commit arranges things so the shadow of the slider can
extend outside the widget, even if the switch itself has no
shadow.
https://bugzilla.gnome.org/show_bug.cgi?id=755791
Matthias Clasen [Sat, 3 Oct 2015 18:08:42 +0000 (14:08 -0400)]
fixup
Matthias Clasen [Fri, 2 Oct 2015 12:35:33 +0000 (08:35 -0400)]
3.18.1
Matthias Clasen [Sat, 3 Oct 2015 04:00:51 +0000 (00:00 -0400)]
Fix make check
Matthias Clasen [Fri, 2 Oct 2015 10:57:05 +0000 (06:57 -0400)]
file chooser: Clear busy cursor before showing error
It looks odd to still have a busy cursor while the error
dialog is presented.
Matthias Clasen [Fri, 2 Oct 2015 03:32:30 +0000 (23:32 -0400)]
file chooser: Improve search focus handling
Move focus to list when search results appear to make it
possible to select the first search result by just hitting
Enter. To keep this from interfering with keynav, we need
to make sure that we still handle Escape to search. And when
search comes up empty, we need to move the focus back to the
entry.
https://bugzilla.gnome.org/show_bug.cgi?id=755926
Matthias Clasen [Fri, 2 Oct 2015 02:59:57 +0000 (22:59 -0400)]
file chooser: Don't select in the search entry
The stack calls gtk_widget_grab_focus on the last focus widget,
which selects the text in the entry, so we need to make sure to
move the focus there first to keep that from happening.
https://bugzilla.gnome.org/show_bug.cgi?id=755931
Emmanuele Bassi [Thu, 1 Oct 2015 17:58:32 +0000 (18:58 +0100)]
app: Warn when trying to add windows on an inert instance
Application windows can only be added after the application has been
started.
https://bugzilla.gnome.org/show_bug.cgi?id=755954
Olivier Fourdan [Thu, 1 Oct 2015 13:46:50 +0000 (15:46 +0200)]
window: ignore resize increments for maximized/fullscreen
Once a window is maximized/fullscreen, resize increments should be
ignored otherwise the window may appear smaller than the screen size.
That also applies to configure requests as well.
https://bugzilla.gnome.org/show_bug.cgi?id=751368
Seán de Búrca [Thu, 1 Oct 2015 02:32:54 +0000 (20:32 -0600)]
Updated Irish translation
Matthias Clasen [Wed, 30 Sep 2015 22:42:20 +0000 (18:42 -0400)]
header bar: Show a non-pixellated app icon
Load a hi-dpi icon when we are running with scale=2.
https://bugzilla.gnome.org/show_bug.cgi?id=751787
Matthias Clasen [Wed, 30 Sep 2015 01:19:06 +0000 (21:19 -0400)]
gdkgears: Use a headerbar
This is a testcase for
https://bugzilla.gnome.org/show_bug.cgi?id=755675
Timm Bäder [Wed, 23 Sep 2015 15:36:39 +0000 (17:36 +0200)]
GtkPopover: Make transitions faster
https://bugzilla.gnome.org/show_bug.cgi?id=755528
Matthias Clasen [Tue, 29 Sep 2015 19:15:06 +0000 (15:15 -0400)]
header bar: Don't leave a dangling pointer
This might be the cause for some crashes, like
https://bugzilla.redhat.com/show_bug.cgi?id=
1264558
Matthias Clasen [Tue, 29 Sep 2015 13:42:02 +0000 (09:42 -0400)]
Use direct GValue access in our marshallers
These are used for every signal emission, so we should
make them as fast as we can.
Matthias Clasen [Tue, 29 Sep 2015 13:40:00 +0000 (09:40 -0400)]
rounded rect: cache arcs
We are only ever drawing axis-aligned quarter arcs here. By caching
these paths, sincos drops from the profiles for drawing-heavy
workloads.
Matthias Clasen [Tue, 29 Sep 2015 02:45:11 +0000 (22:45 -0400)]
container: Avoid duplicate calls to should_propagate
We were calling gtk_container_should_propagate_draw
twice for each child. We can avoid this by splitting
out an gtk_container_propagate_draw_internal function.
Matthias Clasen [Mon, 28 Sep 2015 19:08:26 +0000 (15:08 -0400)]
Drop some redundant cairo_save calls
Almost all callers of _gtk_widget_draw already did their own
cairo_save/restore, so drop the save/restore calls inside
_gtk_widget_draw and instead fix the last caller, gtk_widget_draw,
to do the same.
Matthias Clasen [Mon, 28 Sep 2015 19:02:36 +0000 (15:02 -0400)]
Trivial: Move a cairo_save call
Move the cairo_save call to where it is needed.
Timm Bäder [Wed, 23 Sep 2015 09:30:52 +0000 (11:30 +0200)]
GtkPopover: Remove apply_shape field
This was introduced in
2d9c09d6 alongside a private setter, but that
setter has been removed and the field is always TRUE.
Timm Bäder [Tue, 22 Sep 2015 18:27:51 +0000 (20:27 +0200)]
GtkPopover: Don't resize during the transition
Call gtk_popover_update_position instead which will pick up the new
transition_diff value and pass it on to
_gtk_window_set_popover_position, which in turn will move the window
correctly.
https://bugzilla.gnome.org/show_bug.cgi?id=755435
Timm Bäder [Wed, 23 Sep 2015 06:56:56 +0000 (08:56 +0200)]
GtkWindow: Don't needlessly resize popovers
Check whether the given popover even changed size in
_gtk_window_set_popover_position. If not, just move its GdkWindow
without calling gtk_widget_queue_resize. Using popover_get_rect here is
still relatively costly, but popover_size_allocate would be doing that
anyway.
https://bugzilla.gnome.org/show_bug.cgi?id=755435
Timm Bäder [Tue, 22 Sep 2015 16:25:26 +0000 (18:25 +0200)]
GtkPopover: Remove _get_pointed_to_coords
It's only used once and removing it only adds a single line there.
https://bugzilla.gnome.org/show_bug.cgi?id=755435
Milo Casagrande [Mon, 28 Sep 2015 14:32:59 +0000 (14:32 +0000)]
Updated Italian translation
Milo Casagrande [Mon, 28 Sep 2015 13:25:45 +0000 (13:25 +0000)]
Updated Italian translation
Matthias Clasen [Mon, 28 Sep 2015 10:28:51 +0000 (06:28 -0400)]
Return a value from ::command-line handler
The signal expects a return value, so give it one.
https://bugzilla.gnome.org/show_bug.cgi?id=755692
Matthias Clasen [Mon, 28 Sep 2015 05:43:03 +0000 (01:43 -0400)]
css style: Accumulate changes in place
This avoids allocating a temporary bitmask, and lets us
avoid some value comparisons altogether.
Matthias Clasen [Mon, 28 Sep 2015 00:20:29 +0000 (20:20 -0400)]
Add a few more inlined getters
Matthias Clasen [Sun, 27 Sep 2015 18:06:27 +0000 (14:06 -0400)]
Remove overhead in gdk_window_get_user_data
This function is called very frequently during in GTK+'s drawing
paths, and thus should not carry unexpected costs.
Trần Ngọc Quân [Mon, 28 Sep 2015 08:51:05 +0000 (15:51 +0700)]
Updated Vietnamese translation
Signed-off-by: Trần Ngọc Quân <vnwildman@gmail.com>
Milo Casagrande [Sun, 27 Sep 2015 21:13:14 +0000 (21:13 +0000)]
Updated Italian translation
Milo Casagrande [Sun, 27 Sep 2015 21:00:15 +0000 (21:00 +0000)]
Updated Italian translation
Stas Solovey [Sun, 27 Sep 2015 20:39:52 +0000 (20:39 +0000)]
Updated Russian translation
Милош Поповић [Sun, 27 Sep 2015 15:56:34 +0000 (15:56 +0000)]
Updated Serbian Latin translation
Марко Костић [Sun, 27 Sep 2015 15:55:22 +0000 (15:55 +0000)]
Updated Serbian translation
Benjamin Otte [Sun, 27 Sep 2015 11:20:52 +0000 (13:20 +0200)]
bitmask: Use gsize, not size_t
We want to use the same type everywhere to avoid surprises.
Dmitry Shachnev [Sun, 27 Sep 2015 13:10:15 +0000 (15:10 +0200)]
bitmask: Don't hardcode 64bit size
This looks like an oversight from "quickly testing a potential fix" and
then forgetting to make a production-ready when it works.
https://bugzilla.gnome.org/show_bug.cgi?id=755691
Yosef Or Boczko [Sun, 27 Sep 2015 08:30:57 +0000 (11:30 +0300)]
Updated Hebrew translation
Matthias Clasen [Sun, 27 Sep 2015 04:32:40 +0000 (00:32 -0400)]
Avoid copying lists during draw
We can use gdk_window_peek_children here, instead of copying
the list. Note that we preserve the bottom-to-top ordering by
iterating the list from the end.
gdk_window_get_children_with_user_data was doing a list
reversal while filtering the list.
Matthias Clasen [Sat, 26 Sep 2015 14:19:24 +0000 (10:19 -0400)]
Refactor gtk_widget_add_events_internal_list
Avoid copying the child window lists. It is not necessary.
Matthias Clasen [Sat, 26 Sep 2015 14:12:16 +0000 (10:12 -0400)]
Refactor gtk_widget_set_device_enabled_internal
Instead of constructing a single list of all windows associated
to a widget, just iterate the children lists recursively, avoiding
allocations.
Piotr Drąg [Sat, 26 Sep 2015 16:00:14 +0000 (18:00 +0200)]
Fix Uyghur translation of default:mm
Piotr Drąg [Sat, 26 Sep 2015 15:59:35 +0000 (17:59 +0200)]
Fix Tajik translation of default:mm
Piotr Drąg [Sat, 26 Sep 2015 15:56:20 +0000 (17:56 +0200)]
Fix Khmer translation of default:mm
Piotr Drąg [Sat, 26 Sep 2015 15:56:04 +0000 (17:56 +0200)]
Fix Khmer translation of default:LTR
Piotr Drąg [Sat, 26 Sep 2015 15:55:37 +0000 (17:55 +0200)]
Fix Kikongo translation of default:mm
Piotr Drąg [Sat, 26 Sep 2015 15:54:36 +0000 (17:54 +0200)]
Fix Kikongo translation of default:LTR
Piotr Drąg [Sat, 26 Sep 2015 15:51:07 +0000 (17:51 +0200)]
Fix Bosnian translation of default:mm
Carlos Soriano [Fri, 25 Sep 2015 11:57:24 +0000 (13:57 +0200)]
gtkbookmarksmanager: don't allow non valid utf8 in bookmarks
In case some client send to us a non valid utf8 string, don't screw up
the bookmarks file and just return.
https://bugzilla.gnome.org/show_bug.cgi?id=755215
Carlos Soriano [Thu, 24 Sep 2015 13:54:15 +0000 (15:54 +0200)]
gtkplacessidebar: avoid to use a freed string
The string we were using is the representation of the internal text
in the popover entry. However that can be freed before setting the
bookmark label, if i.e. the row is destroyed and therefore the popover
as well.
To avoid that, duplicate the label in a local variable.
One of the consequences is that for those people using development version
we migth screwed its bookmarks file, since the bookmark manager wrote
garbage from the already freed label.
https://bugzilla.gnome.org/show_bug.cgi?id=755215
Chun-wei Fan [Fri, 25 Sep 2015 04:54:26 +0000 (12:54 +0800)]
build/Makefile-newvs.am: Update Comments for Usage
Update the notes that this is also used for Visual Studio 2015 support,
and correct the MSVC_VER_LONG for MSVC 2015, which is 14, not 2015.
Also add a note that this can be used for other projects that have
Visual Studio build support.
Chun-wei Fan [Fri, 25 Sep 2015 04:25:13 +0000 (12:25 +0800)]
Build: Make Makefile.msvcproj A Bit More Generic
Handle also the situation where $(srcdir) == $(top_srcdir), so that this
can also be used in cases like librsvg and gobject-introspection.
Carlos Garnacho [Thu, 24 Sep 2015 18:25:26 +0000 (20:25 +0200)]
textview: Look up the drop location iter on the right coordinates on DND
We are passing widget coordinates to gtk_text_view_window_to_buffer_coords()
which expects coordinates to be relative to the text window in this case.
This may result in drop coordinates being displaced if the side windows to
the top/left sides are visible and taking space, so the DnD indicator will
point to the wrong position.
This can be seen on gnome-builder and gedit when displaying line numbers.
Christian Kirbach [Thu, 24 Sep 2015 17:01:47 +0000 (17:01 +0000)]
Updated German translation
Michael Weghorn [Thu, 13 Aug 2015 20:36:05 +0000 (22:36 +0200)]
Don't mix in user options of printer instances
GTK+ currently does not support printer instances in the printing
dialog. This commit avoids user options set for specific instances of
a printer being accidently applied to the printer with the same name but
no specific instance defined.
https://bugzilla.gnome.org/show_bug.cgi?id=753628
https://bugzilla.gnome.org/show_bug.cgi?id=582747
Emmanuele Bassi [Thu, 24 Sep 2015 07:27:45 +0000 (08:27 +0100)]
build: Dist toarray.pl
Some distributions (MSYS2, Debian) call autoreconf on a tarball because
they change the autotools artifacts.
In order to rebuild the Broadway generated files, we need to ship the
scripts that we use when disting a release.
Jakub Steiner [Tue, 22 Sep 2015 22:55:17 +0000 (00:55 +0200)]
HC: use round buttons on sidebars
Copy Adwaita in how sidebar icon buttons look
https://bugzilla.gnome.org/show_bug.cgi?id=755268
Carlos Soriano [Wed, 23 Sep 2015 14:13:48 +0000 (16:13 +0200)]
gtkplacessidebar: avoid accessing destroyed popover
The row and rename popovers are always relative_to a row.
We also keep a pointer to them so we can interact with them in
callbacks.
However, if the row is destroyed its associated popovers will be
destroyed as well as relative_to destroyes and frees memory of its
associated widget when its relative_to widget is destroyed.
If we, for example, update the places while the popover is shown we are
going to access and invalid widget on the next time.
To avoid that, connect to the destroy signal of the popovers and clean
the sidebar pointers when that happens.
https://bugzilla.gnome.org/show_bug.cgi?id=755444
Timm Bäder [Wed, 23 Sep 2015 16:29:50 +0000 (18:29 +0200)]
GtkWindow: Check for popover realized-ness before unrealizing
https://bugzilla.gnome.org/show_bug.cgi?id=755473
Timm Bäder [Tue, 15 Sep 2015 07:19:31 +0000 (09:19 +0200)]
gtkmain: Add nullable annotations
https://bugzilla.gnome.org/show_bug.cgi?id=755038
Khaled Hosny [Wed, 23 Sep 2015 21:44:37 +0000 (23:44 +0200)]
Update Arabic translation
Matthias Clasen [Wed, 23 Sep 2015 18:35:58 +0000 (14:35 -0400)]
application: Be save against impl being NULL
We clear the impl in shutdown, so all callbacks that may
happen at a later time need to be prepared for this.
https://bugzilla.gnome.org/show_bug.cgi?id=755432
Chun-wei Fan [Wed, 23 Sep 2015 15:31:23 +0000 (23:31 +0800)]
Fix make dist
Commit
ea241c6 dropped the wrong private header from dist, so correct
this to fix 'make dist'
Chun-wei Fan [Wed, 23 Sep 2015 15:24:36 +0000 (23:24 +0800)]
Fix Visual Studio Build Since
a080cb4
The patch did not check for Visual Studio 2008 correctly, plus it
would break the build on later Visual Studio versions, as it should
be __popcnt(), not __popcount(). Fix that.
Emmanuele Bassi [Wed, 23 Sep 2015 10:01:46 +0000 (11:01 +0100)]
Improve compiler detection for __builtin_popcount()
The popcount builtin was added in GCC after version 4.2 (which is what
some *BSDs are using), which means we need to be more specific when
using it than just asking for GCC.
While we're at it, we can improve the compiler detection, and use a
builtin popcount on Clang ≥ 3.1 and MSVC 2008.
https://bugzilla.gnome.org/show_bug.cgi?id=755455
Matthias Clasen [Sun, 20 Sep 2015 06:32:48 +0000 (02:32 -0400)]
Use stupid quotes instead of dumb quotes
Following a similar change in GLib a while ago.
'bla' may by stupid, but it looks less dumb than `bla'.
Matthias Clasen [Sun, 20 Sep 2015 06:10:11 +0000 (02:10 -0400)]
container: Use qdata for focus chain
Matthias Clasen [Sun, 20 Sep 2015 06:01:46 +0000 (02:01 -0400)]
widget: Add a few more inlined getters
Matthias Clasen [Sun, 20 Sep 2015 05:22:21 +0000 (01:22 -0400)]
size group: Streamline disposal
Remove widgets from their size groups in dispose, without connecting
to ::destroy. The signal handler is not necessary.
Matthias Clasen [Sun, 20 Sep 2015 04:55:23 +0000 (00:55 -0400)]
size request: Avoid unnecessary reffing
There is no particular reason why we should have to ref the
widgets if they are in a size group - we are not reffing them
in the simple case either.
Matthias Clasen [Sun, 20 Sep 2015 04:50:27 +0000 (00:50 -0400)]
size group: streamline iteration slightly
Instead of handling the horizontal and vertical peers separately
(and often, duplicatively), collect all peers in one go. At the
same time, avoid creating and destroying hash tables more often
than necessary.
Matthias Clasen [Sun, 20 Sep 2015 04:12:16 +0000 (00:12 -0400)]
inspector: Ellipsize the accessible name
It can be long, and we don't want the inspector to grow excessively.
Matthias Clasen [Sun, 20 Sep 2015 04:11:58 +0000 (00:11 -0400)]
text view: Use qdata with preallocated quarks
Matthias Clasen [Sun, 20 Sep 2015 04:04:30 +0000 (00:04 -0400)]
entry: Use qdata with preallocated quarks
Matthias Clasen [Sun, 20 Sep 2015 03:58:11 +0000 (23:58 -0400)]
label: Avoid recalculation in some cases
Avoid recalculation the entire label layout when nothing changed.
Matthias Clasen [Sat, 19 Sep 2015 15:33:38 +0000 (11:33 -0400)]
scale: Drop unneeded private exports
Nobody outside gtkscale.c is using these functions, so make
them static.
Matthias Clasen [Sat, 19 Sep 2015 15:17:32 +0000 (11:17 -0400)]
assistant: Drop unneeded calls
GtkAssistant is just a regular composite widget nowadays,
no need to manually queue resizes.
Matthias Clasen [Sat, 19 Sep 2015 05:15:39 +0000 (01:15 -0400)]
style context: Trivial refactor
Use g_set_object for setting the frame clock.
Chun-wei Fan [Wed, 23 Sep 2015 10:31:22 +0000 (18:31 +0800)]
build/win32: Fix 'make -jN dist'
The recent changes to build/win32/vs9|10/Makefile.am fixed 'make distclean'
but broke 'make -jN dist', so fix that by listing the *.headers and using
that list as a dependency and to remove those files in one single command
right after we generate the gtk-install.vsprops template, so that we don't
have to worry about them in 'make distclean'.
Jiri Grönroos [Wed, 23 Sep 2015 07:17:26 +0000 (10:17 +0300)]
Finnish translation update
Matthias Clasen [Tue, 22 Sep 2015 20:07:13 +0000 (16:07 -0400)]
app chooser widget: protect against show_all
The visibility of the 'no apps' placeholder is managed by
the dialog, it should not be affected by gtk_widget_show_all.
https://bugzilla.gnome.org/show_bug.cgi?id=748080
Matthias Clasen [Tue, 22 Sep 2015 19:14:00 +0000 (15:14 -0400)]
app chooser: Avoid duplicates
At the time we populate the model "initially" in constructed(),
it has already been filled and cleared a couple of times (we do
that every time one of the construct properties gets set). So
we can't assume that the model is empty, and have to clear it
first. Otherwise, we add duplicates to the list.
https://bugzilla.gnome.org/show_bug.cgi?id=748080
Christian Hergert [Fri, 4 Sep 2015 21:06:22 +0000 (14:06 -0700)]
build: only compile plug/socket when available
Plug and Socket require X11 windowing. Often times this is compiled
on systems with both wayland and x11, but not always. Quartz is an
example where it is usually not compiled.
Марко Костић [Tue, 22 Sep 2015 09:25:01 +0000 (09:25 +0000)]
Updated Serbian translation